﻿using System;

namespace Program06
{
    class Program
    {
        static void Main(string[] args)
        {
            //写一个销售Sale类,有一单价属性(本属性只读, 在构造方法中赋值),不能为负数,有一个总价属性,总价属性只读,并且根据数量计算总价Price：

            //有些商品是单价打折
            //有些是总价满减
            //有些是第二个半价
            //……

            //有一个方法,可以显示销售列表

            //测试上面的类.

            //总价
            decimal totalPrice = 0M;
            Console.WriteLine("请选择打折方式（1-原价，2-打九折，3-打八折,4-满200减10）:");
            var type = Console.ReadLine();
            CashStrategy cs;
            switch(type)
            {
                case "1":
                    cs = new CashStrategy("Normal");
                    totalPrice += cs.GetTotal(200);
                    break;
                case "2":
                    cs = new CashStrategy("Rebate",0.9);
                    totalPrice += cs.GetTotal(200);
                    break;
                case "3":
                    cs = new CashStrategy("Rebate", 0.8);
                    totalPrice += cs.GetTotal(200);
                    break;
                case "4":
                    cs = new CashStrategy("Return", 1, 200M, 10M);
                    totalPrice += cs.GetTotal(200);
                    break;
                default:
                    break;
            }
            Console.WriteLine("原价：200，应付：" + totalPrice);
        }
    }
}
